var api = require("../../../../api.js"),app = getApp();
Page({
  data: {
    tagArr: [
      // {
      //   title: "标签",
      //   tagGroup: [
      //     {
      //       id: 0,
      //       name: "火锅",
      //       select: false
      //     },
      //     {
      //       id: 1,
      //       name: "鲍鱼宴",
      //       select: false
      //     },
      //     {
      //       id: 2,
      //       name: "蒸汽火烧",
      //       select: false
      //     },
      //     {
      //       id: 3,
      //       name: "蒸汽火烧",
      //       select: false
      //     },
      //     {
      //       id: 4,
      //       name: "火锅",
      //       select: false
      //     }
      //   ],
      // },
      // {
      //   title: "口味",
      //   tagGroup: [
      //     {
      //       id: 5,
      //       name: "火锅",
      //       select: false
      //     },
      //     {
      //       id: 6,
      //       name: "鲍鱼宴",
      //       select: false
      //     },
      //     {
      //       id: 7,
      //       name: "蒸汽火烧",
      //       select: false
      //     },
      //     {
      //       id: 8,
      //       name: "蒸汽火烧",
      //       select: false
      //     },
      //     {
      //       id: 9,
      //       name: "火锅",
      //       select: false
      //     },
      //     {
      //       id: 10,
      //       name: "蒸汽火烧",
      //       select: false
      //     },
      //     {
      //       id: 11,
      //       name: "蒸汽火烧",
      //       select: false
      //     }
      //   ],
      // },
    ]
  },
  onShow: function(){
    let _this = this;
    let _tagArr = _this.data.tagArr;
    app.request({
      url:api.user.usertag,
      data:{
        uid:wx.getStorageSync('uid'),
        bid:wx.getStorageSync('bid')
      },
      success:function(res){
        _tagArr[0] = {
          title: "标签",
          tagGroup: res.data.tag_list
        };
 
        let _myTagArr = res.data.my_tag;  // 我已选择的标签项

        // 
        _tagArr.forEach(function (item, index) {
          item.tagGroup.forEach(function (tag, index) {
            _myTagArr.forEach(function (myTag, index) {
              if (myTag == tag.id) {
                tag.select = true;
              }
            });
          });
        });

       _this.setData({
         tagArr: _tagArr,
         myTagArr: _myTagArr
       })
      }
    })
    
  },

  /**
   * 选择标签
   */
  chooseTag: function(e){
    let _this = this;
    let _tagArr = _this.data.tagArr;
    let _id = e.currentTarget.dataset.id; // 标签ID
    let _myTagArr = _this.data.myTagArr;
    let _index = _this.searchIndex(_myTagArr, _id);
    
    if (_index == -1 && _myTagArr.length == 5){
      wx.showToast({
        icon: 'none',
        title: '最多只能添加5个标签'
      });
      return false;
    }
    if (_index == -1){
      // TODO 执行增加
      app.request({
        url:api.user.tagadd,
        data:{
          id:_id,
          uid:wx.getStorageSync('uid')
        },
        success:function(res){
          if(res.code==1){
            _myTagArr.push(_id);
          }else{
            wx.showToast({
              title: res.msg,
              icon:'none'
            })
          }
        }
      })
     
    }else{
      // TODO 执行删除
      
      app.request({
        url: api.user.tagdel,
        data: {
          id: _index,
          uid: wx.getStorageSync('uid')
        },
        success: function (res) {
          if (res.code == 1) {
            _myTagArr.push(_id);
          } else {
            wx.showToast({
              title: res.msg,
              icon: 'none'
            })
          }
        }
      })

      _this.deleteIndexByArr(_myTagArr, _index);
    }
    
    // 重构标签选择项
    _tagArr.forEach(function (item, index) {
      item.tagGroup.forEach(function (tag, index) {
        if (_id == tag.id) {
          tag.select = !tag.select;
        }
      });
    });
    _this.setData({
      tagArr: _tagArr
    });
  },
  searchIndex: function(arr,id){
    let i;
    for (i = 0; i < arr.length; i++) {
      if (id == arr[i]) {
        return i;
      }
    }
    return -1;
  },
  deleteIndexByArr: function (arr,index){
    let i;
    if (index == arr.length-1){
      return arr.pop();
    }
    for (i = index; i < arr.length; i++) {
      if (i < arr.length - 1) {
        arr[i] = arr[i+1];
      }else{
        return arr.pop();
      }
    }
    return -1;
  },
  /**
   * 只做返回逻辑
   */
  goBack: function(){
    wx.navigateBack();
  }
})